Engineers use compression (also called source coding or source encoding) to reduce the bitrate of digital video. Compression decreases the cost of storing and transmitting video information by converting the information into a lower bitrate form. Decompression (also called decoding) reconstructs a version of the original information from the compressed form. A “codec” is an encoder/decoder system.
A media container format specifies how to organize encoded media content for storage, transmission, etc. A media container format can specify metadata about the encoded media content, timing information, digital rights management information, error correction information or other information. Various container formats have been promulgated for multimedia content, including MPEG-2 TS/PS, Advanced Systems Format (“ASF”) (formerly Advanced Streaming Format), MPEG-4 (“MP4”) as defined in ISO/IEC 14496-12 (ISO base media file format), 14496-14 (MP4 file format) and 14496-15 (AVC file format), Common File Format (“CFF”) and Matroska Video Format (“MKV”). The specification for a container format such as MP4 or CFF defines how to organize encoded media content and add metadata for encoded media content so that a media file is conformant with the container format. A container format specification typically defines options for the syntax of a media file in the container format, detailing the meaning and organization of parameters in the media file when particular features are used. In some cases, a container format specification may also provide details about operations to be performed by a container format sink or container format source. A container format sink puts encoded media content in an elementary media bitstream and metadata (e.g., from a media encoder such as an audio encoder or video encoder) into a media file according to a container format. A container format source parses the media file in the container format and provides the elementary media bitstream to a media decoder for decoding together with metadata.
Every day, millions of media files in container formats are produced by diverse sources. Even more media files in container formats are consumed by different users through assorted activities. Increasingly, users seek to edit media content, such as to edit a video so that only a desired frame or frames are retained, which is also referred to as trimming, rendering or smart editing. As one example, a user of a mobile device such as a smart phone may seek to extract a single picture from a video he or she recorded. Full transcoding, which would involve decoding and re-encoding, is too time and resource intensive and can result in loss of fidelity. But other conventional editing methods other than full transcoding do not allow for sufficient accuracy and/or implementation in the mobile device environment.